'\" e
'\"! eqn | mmdoc
'\"macro stdmacro
.ds Vn Version 1.2
.ds Dt 24 September 1999
.ds Re Release 1.2.1
.ds Dp Jan 14 18:30
.ds Dm 01 depthrang
.ds Xs 41369 4 depthrange.gl
.TH GLDEPTHRANGE 3G
.SH NAME
.B "glDepthRange
\- specify mapping of depth values from normalized device coordinates to window coordinates

.SH C SPECIFICATION
void \f3glDepthRange\fP(
GLclampd \fInear_val\fP,
.nf
.ta \w'\f3void \fPglDepthRange( 'u
	GLclampd \fIfar_val\fP )
.fi

.EQ
delim $$
.EN
.SH PARAMETERS
.TP \w'\f2near_val\fP\ \ 'u 
\f2near_val\fP
Specifies the mapping of the near clipping plane to window coordinates.
The initial value is 0.
.TP
\f2far_val\fP
Specifies the mapping of the far clipping plane to window coordinates.
The initial value is 1.
.SH DESCRIPTION
After clipping and division by \f2w\fP,
depth coordinates range from \-1 to 1,
corresponding to the near and far clipping planes.
\%\f3glDepthRange\fP specifies a linear mapping of the normalized depth coordinates
in this range to window depth coordinates.
Regardless of the actual depth buffer implementation,
window coordinate depth values are treated as though they range
from 0 through 1 (like color components).
Thus,
the values accepted by \%\f3glDepthRange\fP are both clamped to this range
before they are accepted.
.P
The setting of (0,1) maps the near plane to 0 and
the far plane to 1.
With this mapping,
the depth buffer range is fully utilized.
.SH NOTES
It is not necessary that \f2near_val\fP be less than \f2far_val\fP.
Reverse mappings such as $"near_val" ~=~ 1$, and $"far_val" ~=~ 0$
are acceptable.
.SH ERRORS
\%\f3GL_INVALID_OPERATION\fP is generated if \%\f3glDepthRange\fP
is executed between the execution of \%\f3glBegin\fP
and the corresponding execution of \%\f3glEnd\fP.
.SH ASSOCIATED GETS
\%\f3glGet\fP with argument \%\f3GL_DEPTH_RANGE\fP
.SH SEE ALSO
\%\f3glDepthFunc(3G)\fP,
\%\f3glPolygonOffset(3G)\fP,
\%\f3glViewport(3G)\fP
